PROJECT_HOME=../../

OBJS = test.o1 userModularFunctionBase.o userModularFunctionInteger.o\
       determinant.o \
	   fibo.o
	   #testNumber.o \

LOADLIBES= $(Linbox)
CXXFLAGS= $(Linbox_c) -I$(PROJECT_HOME) -c -g -Wall #-fPIC 
CC = g++ 


test: $(OBJS)
	$(CC)  -o test $(OBJS) $(LOADLIBES) 
	cp test ../bin/test-user-functions
test.o1: test.cpp
	$(CC) $(CXXFLAGS) -o test.o1 test.cpp
userModularFunctionBase.o: userModularFunctionBase.cpp userIncludes.hh 
	$(CC) $(CXXFLAGS) userModularFunctionBase.cpp userIncludes.hh
userModularFunctionInteger.o: userModularFunctionInteger.cpp userModularFunctionInteger.hh
	$(CC) $(CXXFLAGS) userModularFunctionInteger.cpp userModularFunctionInteger.hh
determinant.o: determinant.cpp determinant.hh
	$(CC) $(CXXFLAGS) determinant.cpp determinant.hh

testNumber.o: testNumber.cpp
	$(CC) $(CXXFLAGS) testNumber.cpp

fibo.o: fibo.cpp
	$(CC) $(CXXFLAGS) fibo.cpp fibo.h
lib:
	$(CC) -shared -Wl,-soname,libuserFunctions.so.1 -o libuserFunctions.so $(OBJS) $(LOADLIBES) -lc

testme:
	./test determinant 7 data/100_100
clean:
	rm -f *.o *.o1 *.gch test libuserFunctions.so
